Oldest-first garbage collection
نویسندگان
چکیده
An oldest-first generational garbage collector leaves intact the most recently allocated object space, and instead collects the remaining, older objects. Because these older objects have had more time to die, an oldestfirst copying collector will generally do less copying that a traditional generational collector (which operates youngest-first), a non-generational collector, and even Clinger and Hansen’s non-predictive collector (which does wait a little while for objects to die). To explore the performance of oldest-first collection, we present a mathematical analysis, simulation results for a variety of mature object lifetime distributions, and simulation results for mature object lifetimes drawn from real programs and for real mature object traces. These results demonstrate that oldest-first collection does perform significantly better than youngest-first or non-generational collection for mature objects. Although some previous work points in this direction, it provided very little evidence of our conclusion. We also find that oldest-first collection works well for lifetime distributions that satisfy the generational hypothesis, which suggests we should also consider oldest-first collection in the young object space.
منابع مشابه
Concurrent Garbage Collection in O2
ing is modified in the system while the GC is examining it in order to determine which objects are garbage. We describe a concurrent garbage collector (GC) for object-oriented databases. Our GC uses a new synchronization mechanism (mechanism that allows the GC to operate concurrently with ordinary users of the database), called CC-consistent cuts. A GC-consistent cut is a set of virtual copies ...
متن کاملA Non-blocking Snapshot Algorithm for Distributed Garbage Collection of Mobile Active Objects
Distributed actor garbage collection differs from distributed object garbage collection in that it needs to consider in-transit message detection, unordered message reception, and actor migration. In this paper, we propose a new snapshot-based distributed actor garbage collection algorithm. The algorithm does not require First-In-First-Out or blocking communication, nor message logging. Further...
متن کاملEmpirical Studies of Distributed Garbage Collection
Garbage collection has been a necessary evil of computer languages that employ dynamic data structures. The 1990’s has seen some significant technology shifts that present new challenges for automatic garbage collection. In particular, distributed systems are providing an economical approach to parallel processing. Many distributed garbage collection algorithms have been proposed but few have b...
متن کاملCollection Schemes for Distributed Garbage
With the continued growth in interest in distributed systems, garbage collection is actively receiving attention by designers of distributed languages [Bal, 1990]. Distribution adds another dimension of complexity to an already complex problem. A comprehensive review and bibliography of distributed garbage collection literature up to 1992 is presented. As distributed collectors are largely base...
متن کاملCyclic Distributed Garbage Collection Without Global Synchronization in CORBA
1 Abstract This paper describes an algorithm for cyclic distributed garbage collection and its implementation. The algorithm is an extension of reference-listing that collects cyclic garbage. It uses back-tracing instead of mark-and-sweep to eliminate the need of global synchronization. First, by using a special heuristic the algorithm chooses an object that is likely to be garbage (suspect). T...
متن کامل